The current state-of-the-art for video encoding is the ITU-T H.264/AVC video coding standard. It defines a number of different profiles for different applications, including the Main profile, Baseline profile and others.
There are a number of standards for encoding/decoding images and videos, including H.264/AVC, that use block-based coding processes. In these processes, the image or frame is divided into blocks, typically 4×4 or 8×8, and the blocks are spectrally transformed into transform domain coefficients. The transform domain coefficients are then quantized and entropy encoded. In many cases, the data being transformed is not the actual pixel data, but is residual data following a prediction operation. Predictions can be intra-frame, i.e. block-to-block within the frame/image, or inter-frame, i.e. between frames (also called motion prediction).
Rate-distortion optimization is used to improve coding performance. Rate-distortion optimization processes have focused upon selecting a coding mode, motion vector and/or quantization step size that minimizes a rate-distortion cost expression.
A further rate-distortion optimization process employs the transform domain coefficients themselves as a free parameter in the rate-distortion analysis. This is termed “soft-decision quantization”, as described in US patent publication 2006/0013497 to Yang et al. (hereinafter “Yang 1”) and US patent publication 2007/0217506 to Yang et al (hereinafter “Yang 2”). The term soft-decision quantization (“SDQ”) is used to distinguish from “hard-decision quantization”, which is a quantization process in which quantization decisions are made without including the transform domain coefficients as a free parameter in the rate-distortion analysis. The process described in Yang 1 details an example of SDQ in the context of JPEG image encoding using Huffman tables. The process described in Yang 2 details an example of SDQ in the context of H.264 video encoding using context adaptive variable length coding (CAVLC).
In the soft-decision quantization described in Yang 2, a trellis of states is built reflecting the various quantization levels for the transform domain coefficients and reflecting the costs associated with encoding each quantized coefficient, given the previous output (for example using CABAC or CALVC).
While soft-decision quantization tends to lead to improved rate-distortion performance, it is computationally demanding due to the need to evaluate all states in the trellis.
It would be advantageous to provide for an improved encoder and methods or processes for encoding.
Similar reference numerals may have been used in different figures to denote similar components.